#ifndef MUSIC_H
#define MUSIC_H
#include<QUrl>

class Music
{
public:
    Music();
    Music(QUrl url);
    void setMusicName(const QString& musicName);//设置歌曲名称
    void setMusicSinger(const QString& musicSinger);//设置歌手名称
    void setMusicAlbum(const QString& musicAlbum);//设置歌曲专辑
    void setMusicDuration(qint64 duration);//设置歌曲持续时长
    void setIsLike(bool isLike);//是否喜欢
    void setIsHistory(bool isHistory);//是否为历史播放
    void setMusicPath(QUrl musicUrl);//歌曲路径

    QString getMusicName()const;//设置歌曲名称
    QString getMusicSinger()const;//设置歌手名称
    QString getMusicAlbum()const;//设置歌曲专辑
    qint64 getMusicDuration()const;//设置歌曲持续时长
    bool getIsLike()const;//是否喜欢
    bool getIsHistory()const;//是否为历史播放
    QUrl getMusicPath()const;//歌曲路径
    QString getMusicUuid()const;//获取歌曲标识码
    QString getLrcFilePath();//获取歌曲LRC路径
private:
    void praseMediaMetaMusic();//解析歌曲元数据
private:
    //歌曲唯一标识码
    QString musicUuid;
    //歌曲名称
    QString musicName;
    //歌手名称
    QString musicSinger;
    //歌曲专辑
    QString musicAlbum;
    //持续时长--long long
    qint64 duration;
    //是否收藏(是否喜欢)
    bool isLike;
    //是否为历史播放
    bool isHistory;
    //歌曲URL
    QUrl musicUrl;
};

#endif // MUSIC_H
